home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 001 / pibt3sp4.arc / WRITELNE.PAS < prev    next >
Pascal/Delphi Source File  |  1985-08-26  |  3KB  |  55 lines

  1. (*----------------------------------------------------------------------*)
  2. (*         Writelne --- Write line and echo to printer/capture file     *)
  3. (*----------------------------------------------------------------------*)
  4.  
  5. PROCEDURE Writelne( T : AnyStr; On_Screen : BOOLEAN );
  6.  
  7. (*----------------------------------------------------------------------*)
  8. (*                                                                      *)
  9. (*     Procedure:  Writelne                                             *)
  10. (*                                                                      *)
  11. (*     Purpose:    Displays line on screen/printer/capture file.        *)
  12. (*                                                                      *)
  13. (*     Calling Sequence:                                                *)
  14. (*                                                                      *)
  15. (*        Writelne( T : AnyStr; On_Screen : BOOLEAN );                  *)
  16. (*                                                                      *)
  17. (*           T         --- Text to be displayed                         *)
  18. (*           On_Screen --- TRUE to display text on screen               *)
  19. (*                                                                      *)
  20. (*      Calls:   None                                                   *)
  21. (*                                                                      *)
  22. (*----------------------------------------------------------------------*)
  23.  
  24. BEGIN (* Writelne *)
  25.                                    (* Display on screen *)
  26.    IF On_Screen THEN
  27.       WRITELN( T );
  28.                                    (* Write to capture file *)
  29.    IF Capture_On THEN
  30.       WRITELN( Capture_File, T );
  31.                                    (* Write to printer *)
  32.    IF Printer_On THEN
  33.       WRITELN( Lst, T );
  34.                                    (* Point to next slot in review buffer *)
  35.  
  36.    Review_Head := Review_Head + 1;
  37.    IF Review_Head > Max_Review_Length THEN
  38.       Review_Head := 1;
  39.                                    (* If we wrapped into last line,       *)
  40.                                    (* update last line pointer            *)
  41.  
  42.    IF Review_Head = Review_Tail THEN
  43.       BEGIN
  44.          Review_Tail := Review_Tail + 1;
  45.          IF Review_Tail > Max_Review_Length THEN
  46.             Review_Tail := 1;
  47.       END;
  48.  
  49.    IF Review_Tail = 0 THEN
  50.       Review_Tail := 1;
  51.  
  52.    Review_Buffer^[Review_Head] := T;
  53.  
  54. END   (* Writelne *);
  55.